1. Field of the Invention
This invention relates to a data input/output apparatus and a data input/output method to be suitably used for an AV server system.
2. Description of the Prior Art
The increased number of channels that have become available for accessing to various types of information due to, if partly, the development of CATV (cable television) in recent years has by turn given rise to a strong demand for novel audio/video data recording/reproducing apparatus adapted to recording and reproducing different sets of audio/video data concurrently with a single apparatus. As a matter of fact, apparatus referred to as video servers (or AV (audio and/or video) servers) and adapted to concurrently recording different sets of audio/video data in and also reproducing such data from randomly accessible recording means such as hard disks have getting popularity to meet this demand.
Generally, a video server installed in a broadcasting station is required to show a high data transfer rate and have a huge recording capacity in order to meet various requirements including a high image and sound quality and a long recording time. Thus, attempts have been made to produce a high data transfer rate and a high recording capacity by introducing a data recording/reproducing apparatus capable of dealing with a plurality of hard disks (hereinafter referred to as HD) units concurrently and storing parity data in the apparatus in advance so that the overall reliability of the apparatus may be maintained if one or more than one of the HD units fail. With such an arrangement, it is possible to realize a multi-channel video server adapted to a variety of applications such as VOD (video on demand) and NVOD (near video on demand) systems, where same source data comprising a plurality of different sets of audio/video data are recorded in a distributed fashion and then reproduced simultaneously or with slight time differences before they are transmitted through a multiple of channels.
The data recording/reproducing apparatus used in such a video server is based on the RAID (redundant arrays of inexpensive disks) technology of utilizing a plurality of hard disk drives (hereinafter referred to as HDDs), each being adapted to drive a plurality of hard disks, as described in Patterson et al. (xe2x80x9cEA Case for Redundant Arrays of Inexpensive Disks (RAID)xe2x80x9d, ACM SIGMOND Conference, Chicago, Ill., Jun. 1-3, 1998.)
According to the above paper, the RAID technology may be classified into five categories, RAID-1 through RAID-5. Category RAID-1 used to write same data in a pair of HDDs. With Category RAID-3, the input data are divided into groups of data having a predetermined length and recorded in a plurality of HDDs, while a parity data is generated as exclusive OR of the corresponding data blocks of each HDD and written in another HDD. With Category RAID-5, on the other hand, data are divided into large units (blocks) and the data of each unit are recorded in an HDD as data block, while the outcome of exclusive OR (a parity data) of the corresponding data blocks of each HDD is recorded in other HDDs as a parity block in a distributed fashion.
For the remaining aspects of RAID, reference should be made to the above identified paper.
An AV server system as described above comprises a data storage consisting of a plurality of hard disks for storing AV data, a plurality of AV data input/output interfaces (hereinafter referred to as ports) for inputting AV data into and outputting such data from the data storage and a system controller for controlling the operation of the entire system. Each port has a memory for regulating the timing of retrieving out AV data from and that of storing AV into the data storage. Then, an AV server system having the above described configuration performs processmg operations concurrently for a multiple of channels as the system controller controls the ports in such a way that they are used evenly and cyclically on a time division basis with a predetermined period. More specifically, each port processes AV data for a single channel on a time division basis so that, as a result, AV date are processed for all the channels simultaneously by the ports, the number of which is equal to that of the channels. Therefore, with such an AV server system, time slots are allocated to the ports of the multiple of channels periodically in a rigid fashion. Then, as a general practice, the length of each time slot is made as short as possible in order to minimize the queuing time of each port, provided that the time length required for each port to read and reproduce a given volume of data from the memory at an ordinary rate is secured.
Now, the operation of allocating time slots to an AV server having four ports, port 1 through port 4, will be described by referring to FIG. 1 of the accompanying drawings.
In the example of FIG. 1, the system controller evenly divides each cycle period into equal four time slots and allocates them sequentially to Port 1 through Port 4 so that the time allocation proceeds with a fixed period. In other words, every fourth time slot is allocated to each port and one fourth of each period is given to the port.
Assume now, in FIG. 1, that AV data are being read and reproduced from the data storage at high speed at Port 1 and AV data are being written onto a hard disk of the data storage at Port 3, whereas both Port 2 and Port 4 remain idle. Then, the number of data sheets that Port 1 can reproduce per unit time is equal to the number of data sheets that the memory of Port 1 can read in a time slot.
If the image being reproduced is reoriented and/or the rate or reproduction is modified in the time slot of Port 2, the corresponding image reproducing operation cannot take place until the next data reading operation at Port 1 is completed or after the end of the next 3 to 4 time slots.
Thus, known AV server systems having a configuration as described above are accompanied by the problems as identified below particularly when reproducing data at high speed because the length of the time slot is selected on the basis of ordinary AV data reproducing operations.
Firstly, with such known AV server systems, storage areas on the currently active hard disk have to be accessed discontinuously in a high speed AV data reproduction mode of operation so that a large portion of the time dedicated to the data reproducing operation is actually consumed for the accessing process at the cost of the time necessary for reading data. Therefore, the above described time slot allocation scheme is not very effective and the number of data sheets reproduced per unit time is reduced significantly particularly during high speed data reproducing operations so that images may be displayed like those of a slow-speed film and the operation of searching out any wanted image can become very cumbersome in the editing session. Thus, there is a demand for an AV server system that can output as many data sheets in a high speed reproduction mode as it can in an ordinary speed reproduction mode.
Secondly, such known AV server systems cannot respond to a command for an operation of reversing the reproducing direction or a similar operation issued by way of the control panel until the next time slot allocated to the related channel or port comes to make the system rather clumsy and inefficient.
In view of the above identified problems and other problems, it is therefore the object of the present invention to provide a data input/output apparatus and a data input/output method that can output an increased number of data sheets in a high speed reproduction mode and be operated comfortably and efficiently.
According to the invention, the above object is achieved by providing a data recording/reproducing apparatus comprising:
a data recording/reproducing means for recording data including audio and/or video data in and reproducing such data from a plurality of non-linearly accessible recording medium;
a plurality of input/output processing means for processing said input data and outputting them to said recording/reproducing means, while processing said data output from said recording/reproducing means and outputting them; and
a control means for controlling said input/output processing means so as to make them carry out said processing operations in the allocated respective time slots and outputting time slot signals with a fixed cycle period to the respective input/output means;
said control means being so adapted that, when there is an idle input/output processing means out of said plurality of input/output processing means, it outputs the time slot signals to be output to said idle input/output processing means to the remaining input/output processing means.
According to another aspect of the invention, there is provided a data recording/reproducing method to be used for a data recording/reproducing apparatus comprising a plurality of input/output processing sections for processing and outputting input data including audio and/or video data and a plurality of non-linearly accessible recording medium in order to record said data output from said input/output processing sections in said recording medium and also to reproduce the data recorded in said recording medium and output them to said input/output processing sections; said method comprising:
a first step of allocating time slot signals with a fixed cycle period to said input/output processing sections respectively; and
a second step of causing each of said input/output processing sections to carry out an operation of said data in the time slots allocated to it in said first step and output the processed data to said recording medium and also causing it to process the data output from the related recording medium and externally output the processed data; said method being so adapted that, when there is an idle input/output processing section out of said plurality of input/output processing sections, it causes the time slot signals scheduled to be output to said idle input/output processing means to be actually output to the remaining input/output processing means.
Thus, with a data input/output apparatus according to the invention and having a configuration as described above, the control means can allocate more than one time slots to a particular data input/output interface in a period for a data input/output operation under certain conditions to duplicate or triplicate the time that can be used for the data input/output interface so that the volume of outpput data per unit time can be remarkably increased particularly for high speed data reproducing operations to facilitate the operation of searching images and the queuing time of each data input/output interface waiting for the next time slot can be significantly reduced to improve the responsiveness and the operability of the apparatus.
With a data input/output method according to the invention, again, more than one time slots can be allocated to a particular data input/output interface in a period for a data input/output operation under certain conditions to duplicate or triplicate the time that can be used for the data input/output interface so that the volume of output data per unit time can be remarkably increased particularly for high speed data reproducing operations to facilitate the operation of searching images and the queuing time of each data input/output interface waiting for the next time slot can be significantly reduced to improve the responsiveness to the user""s operation.